package com.example.designpatterns.factory;

/**
 * 工厂方法模式演示类
 */
public class FactoryMethodDemo {
    public static void main(String[] args) {
        // 使用ConcreteCreatorA
        Creator creatorA = new ConcreteCreatorA();
        creatorA.someOperation();  // 将输出: 执行具体产品A的操作
        
        // 使用ConcreteCreatorB
        Creator creatorB = new ConcreteCreatorB();
        creatorB.someOperation();  // 将输出: 执行具体产品B的操作
        
        // 直接使用工厂方法获取产品
        Product productA = creatorA.createProduct();
        productA.operation();  // 将输出: 执行具体产品A的操作
        
        Product productB = creatorB.createProduct();
        productB.operation();  // 将输出: 执行具体产品B的操作
    }
} 